Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change bitfields from enum to uint64 #125

Conversation

tigrannajaryan
Copy link
Member

@tigrannajaryan tigrannajaryan commented Sep 20, 2022

Resolves #121

In some languages enum fields are strongly typed and it is impossible to assigned OR-ed values to the enum field. This makes impossible to compose the bit fields properly.

This changes all bit field declarations from enum to uint64. The enum declarations stay, so that bit definitions are clear.

This must be a non-breaking change on the wire. The enum and uint64 are encoded exactly the same way on the wire.

Resolves open-telemetry#121

In some languages enum fields are strongly typed and it is impossible
to assigned OR-ed values to the enum field. This makes impossible to
compose the bit fields properly.

This changes all bit field declarations from enum to uint64. The enum
declarations stay, so that bit definitions are clear.
@tigrannajaryan tigrannajaryan requested a review from a team September 20, 2022 17:05
tigrannajaryan added a commit to tigrannajaryan/opamp-go that referenced this pull request Sep 20, 2022
Implements spec change open-telemetry/opamp-spec#125

In some languages enum fields are strongly typed and it is impossible to assigned OR-ed values to the enum field. This makes impossible to compose the bit fields properly.

This changes all bit field declarations from enum to uint64. The enum declarations stay, so that bit definitions are clear.
@tigrannajaryan tigrannajaryan merged commit 704bcc0 into open-telemetry:main Sep 22, 2022
@tigrannajaryan tigrannajaryan deleted the feature/tigran/enumbitfields branch September 22, 2022 13:02
tigrannajaryan added a commit to open-telemetry/opamp-go that referenced this pull request Sep 22, 2022
Implements spec change open-telemetry/opamp-spec#125

In some languages enum fields are strongly typed and it is impossible to assigned OR-ed values to the enum field. This makes impossible to compose the bit fields properly.

This changes all bit field declarations from enum to uint64. The enum declarations stay, so that bit definitions are clear.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Unable to set multiple Capabilities in a single message when using Java/Kotlin protobuf
2 participants